标签:经验报告
LMAX 架构
LMAX 是一个全新的零售金融交易平台。因此,它必须以低延迟处理大量交易。该系统构建在 JVM 平台上,核心是一个业务逻辑处理器,可以在单个线程上每秒处理 600 万个订单。业务逻辑处理器完全在内存中运行,使用事件溯源。业务逻辑处理器被 Disruptors 包围 - Disruptors 是一个并发组件,它实现了一个无需锁即可运行的队列网络。在设计过程中,团队得出结论,最近使用队列的高性能并发模型的方向与现代 CPU 设计根本不一致。
在 Xapo 银行分散架构实践
Xapo 最初是一家比特币服务提供商,后来发展成为一家网上银行。在转型过程中,它需要重新评估其软件资产,并建立架构能力来指导其未来发展。它借鉴了领域驱动设计、团队拓扑和架构建议流程的理念,开发了架构建议论坛。这使得其软件交付团队更加一致,并制定了连贯的技术战略。
民主政治技术革命
我的同事 Zack Exley 和我谈论了 2008 年奥巴马总统竞选活动中使用的软件。我发现特别有趣的一点是,软件如何支持和互动竞选活动的组织方式。
软件与奥巴马的胜利
巴拉克·奥巴马在 2008 年总统竞选中的胜利,软件发挥了重要作用,尤其是在互联网的使用方面。但也许最有趣的方面是软件的进步与竞选活动的人员组织发展之间的相互作用。
纳什维尔项目
我最近花了一些时间研究我最喜欢的 Thoughtworks 项目之一。这是一个始于 1998 年的项目,使用了当时最新的 J2EE 技术。多年来,它有着一段迷人的历史:从使用 EJB 开始,到移除 EJB,再到离岸到班加罗尔,最后回到芝加哥。许多人进出过这个项目,项目的人员规模也在 6 到 60 人之间波动。总的来说,该项目已经投入了超过 300 个工年的努力,代码量约为 10 万行。
轮滑鞋式实施
敏捷开发的一个关键特性是弄清楚如何让系统只用一小部分功能上线。我们构建软件是为了它带来的商业价值,越快上线,我们就越快获得至少一部分商业价值。